package controleCliente;

import java.io.Serializable;
import java.util.Vector;

import javax.swing.table.DefaultTableModel;

import clienteQuery.Cliente;



public class ModelControleCliente extends DefaultTableModel{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private Vector<Cliente> clientes;
		
	
	public void setVetorClientes(Vector<Cliente> clientes) {
		this.clientes = clientes;
	}
	
	public Vector<Cliente> getVetorClientes() {
		return this.clientes;
	}
	
	public Object getValor(int linha, int coluna){
		Cliente cliente = (Cliente) clientes.get(linha);
		
		if(cliente != null){
			switch(coluna){
				case 0 : return cliente.getId();
				case 1 : return cliente.getNome();
			}
		}
		return null;
	}
	
	public int getQuantLinha(){
		if(clientes != null){
			return this.clientes.size();
		}
		return 0;
	}
	
	public Cliente getCliente(int linha){
		if(linha >= 0){
			return (Cliente) this.clientes.get(linha);
		}
		return null;
	}

	@Override
	public void setDataVector(Vector dataVector, Vector columnIdentifiers) {
		super.setDataVector(null, columnIdentifiers);
	}

	@Override
	public void addRow(Vector clientes) {
		 
		Vector<Cliente> vCliente = (Vector<Cliente>)clientes;
		 
		int tam = clientes.size();
		 
		for(int i = 0; i < tam; i++){
			 Vector rowData = new Vector();

			 rowData.add(vCliente.get(i).getId());
			 rowData.add(vCliente.get(i).getNome());
			 rowData.add(vCliente.get(i).getContato());
			 rowData.add(vCliente.get(i).getCnpjCpf());
			 rowData.add(vCliente.get(i).getRgIe());
			 rowData.add(vCliente.get(i).getCelular());
			 rowData.add(vCliente.get(i).getEmail());
			 rowData.add(vCliente.get(i).getFax());
			 rowData.add(vCliente.get(i).getMunicipio());
			 //System.out.print( vCliente.get(i).getId());
			 super.addRow(rowData);	
		 }
	}

	@Override
	public boolean isCellEditable(int row, int column) {
		// TODO Auto-generated method stub
		return false;
	}
	
}
